home *** CD-ROM | disk | FTP | other *** search
/ Over 1,000 Windows 95 Programs / Over 1000 Windows 95 Programs (Microforum) (Disc 1).iso / 0769 / finger.h < prev    next >
C/C++ Source or Header  |  1997-04-10  |  3KB  |  105 lines

  1. //
  2. // Finger include holds all shared data & function definitions.
  3. //
  4.  
  5. //
  6. // Windows Sockets 1.0 versions define inet_addr as returning a struct,
  7. // whereas later version use an unsigned long.  We use the latter
  8. // definition and provide a #define for backwards compatability.
  9. //
  10.  
  11. #define WSVERSION 0x101                   // Windows Sockets version
  12.  
  13. #if (WSVERSION == 0x100)
  14.    #define INET_ADDR ul_inet_addr
  15.    u_long ul_inet_addr(char *szIP);
  16.  
  17.    u_long ul_inet_addr(char *szIP)        // make our own inet_addr
  18.    {
  19.       IN_ADDR in;
  20.  
  21.       in = inet_addr(szIP);
  22.       return in.s_addr;
  23.    }
  24. #else                               
  25.    #define INET_ADDR inet_addr            // WS DLL has the right inet_addr
  26. #endif
  27.  
  28. //
  29. // miscellaneous
  30. //
  31.  
  32. #define APIENTRY  PASCAL
  33. #define WNDPROC   FARPROC
  34.  
  35. typedef struct                      // associates messages (or menu ids) 
  36. {                                   // with a handler function
  37.    UINT Code;
  38.    LONG (*Fxn)(HWND, UINT, UINT, LONG);
  39. } DECODEWORD;
  40.  
  41. #define dim(x) (sizeof(x) / sizeof(x[0]))
  42.  
  43. typedef unsigned long IPA;
  44. typedef IPA FAR *LPIPA;
  45. typedef LPIPA FAR *LPPIPA;
  46.  
  47. //
  48. // exported from module DSPLIST
  49. //
  50.  
  51. typedef struct line_item
  52. {
  53.    char *sztext;
  54.    int len;
  55.    struct line_item *next;
  56. } LINEITEM;
  57.  
  58. VOID PushChars(char *buf, int buflen);
  59. BOOL OpenDisplayList(VOID);
  60. VOID CloseDisplayList(VOID);
  61. VOID FreeLineList(LINEITEM *pLine);
  62. VOID FreeDisplayList(VOID);
  63. VOID GetDisplayList(LINEITEM **ppLine, int *pNLines);
  64.  
  65. //
  66. // exported from NETWRK_ 
  67. //
  68.  
  69. #define FE_ERROR     1  // finger operation was not successful
  70. #define FE_NOPORT    2  // failure to resolve finger service to a port 
  71. #define FE_NOHOST    3  // failure to resolve host specifier
  72. #define FE_NOSOCK    4  // failure to obtain socket for connection
  73. #define FE_NOCONN    5  // failure to connect to remote finger server
  74. #define FE_NOSEND    6  // failure to send finger query
  75. #define FE_NORECV    7  // failure to receive finger data
  76.  
  77. VOID FingerStart(VOID);
  78. VOID InitNetInst(HWND hWnd);
  79. VOID InitNetApp(VOID);
  80.  
  81. //
  82. // exported from module FINGER
  83. //
  84.  
  85. #define MAXHOST   40
  86. #define MAXUSER   40
  87.  
  88. extern char szHostName[];    // name or address of host to finger
  89. extern char szUser[];        // user id for query
  90. extern HINSTANCE hInst;                // this instance of finger
  91.  
  92. VOID ReportFingerErr(UINT Err);
  93. VOID FingerFinish(UINT Err);
  94.  
  95. //
  96. // menu & dialog identifiers
  97. //
  98.  
  99. #define IDM_HOST     1
  100. #define IDM_EXIT     2
  101. #define IDM_ABOUT    3
  102. #define IDC_HOSTNAME 10
  103. #define IDC_USER     11
  104.  
  105.